\documentclass[hyperref,UTF8]{ctexart}
\usepackage{hyperref}

\usepackage{fancyhdr}
\pagestyle{fancy}
\usepackage{enumerate}
\usepackage{geometry}
\geometry{a4paper,scale=0.72}
\setlength\headwidth{\textwidth}

\usepackage{graphicx}
\usepackage{listings}
\usepackage{amsmath}
\usepackage{amsthm}
\usepackage{mathtools}
\ctexset{section={format={\Large\bfseries}}}

\title{Programming assignments 2.9.2}


\author{邵盛栋 \\ 信息与计算科学 3200103951}

\begin{document}
	\maketitle
	\section*{程序设计报告}
	\begin{enumerate}[A]
		\item 根据题目要求定义函数类以及插值多项式类，由
		\[\pi_n(x)= \begin{cases}1, & n=0 \\ \prod_{i=0}^{n-1}\left(x-x_i\right), & n>0\end{cases},\quad p_n(x)=\sum_{k=0}^n a_k \pi_k(x)\]
		定义Newton polynomial以及牛顿插值多项式和对应函数，得到头文件\verb|Interpolation.h|.
		\item 本题先定义函数$ f(x)=\dfrac{1}{1+x^{2}} $,插值点为
		\[ x_{i}=-5+10\frac{i}{n},i=0,1,\ldots,n\qquad n=2,4,6,8 \]
		得到对应点的插值多项式的值，并在matlab中绘图如下：
		\begin{figure}[ht]
			\centering
			\includegraphics[width=0.5\linewidth]{questionB}
		\end{figure}
	
		四个图对应不同n的值，其中红色曲线表示的是函数本身.
		\item 本题与B题相似，函数变为$ f(x)=\dfrac{1}{1+25x^{2}} $,而插值点变为：
		\[ x_k=\cos \frac{2 k-1}{2 n} \pi,k=1,2,\ldots,n\qquad n=5,10,15,20 \]
		重复B题步骤并在matlab中绘图：
		\begin{figure}[ht]
			\centering
			\includegraphics[width=0.5\linewidth]{questionC}
		\end{figure}
		
		与原函数的图像进行比较，可以发现n越大，图像拟合得越好.
		\item 本题需在头文件\verb|Interpolation.h|中添加Hermite插值多项式类，并添加相应的求值函数\verb|solve()|以及求导函数\verb|diff()|.
		\begin{enumerate}
			\item 第一小题需要用Hermite多项式来预测t=10s时汽车的位置及其速度，程序输出结果为：
			\begin{verbatim}
				t=10s时汽车的位置为742.503英尺
				t=10s时汽车的速度为48.3817英尺/秒
			\end{verbatim}
			\item 第二小题需要判断在时间为0~13的过程中速度是否超过81英尺/秒，以0.1单位的时间递增，估计每个时间的速度，对速度逐个进行判断，最后得到结果：
			\begin{verbatim}
				汽车超过了每秒81英尺的速度限制
			\end{verbatim}
		\end{enumerate}
		\item \begin{enumerate}
			\item 第一小题需要用牛顿公式近似每个样本的平均重量曲线，构造函数Sp1和Sp2得到插值点以及对应的函数值，并计算两个样本对应的牛顿插值多项式，最后在$ [0,28] $上以0.01为间隔在matlab上拟合图像，得到的两个图像如下：
			\begin{figure}[ht]
				\centering
				\includegraphics[width=0.4\linewidth]{questionE}
			\end{figure}
			
			\item 第二小题需要预测两个幼虫样本是否会在15天后死亡，分别估计两个插值多项式在$ x=43.0 $处的值，输出如下：
			\begin{verbatim}
				第一个样本预计在十五天后的体重为： 14640.3
				第二个样本预计在十五天后的体重为： 2981.48
			\end{verbatim}
			这两个值显然与事实不符，结合第一小题中的图像趋势可知，两个幼虫样本大概率在15天后死亡.
		\end{enumerate}
	\end{enumerate}
	\section*{编译说明}
		输入\verb|make|产生可执行文件，再执行\verb|./run|可得到输出结果以及\verb|questionB.txt|、\verb|questionC.txt|、\verb|questionE.txt|三个包含拟合图像所需数据的文件，再运行\verb|pictureB.m|、\verb|pictureC.m|、\verb|pictureE.m|三个matlab文件，可得到三个题目对应的图像.
	
\end{document}
